﻿@inherits BaseComponent

@{
    var text = GetText();
}
@if (OnClick.HasDelegate)
{
    <Tag Color="@GetColor(text)" OnClick="OnClick">@text</Tag>
}
else
{
    <Tag Color="@GetColor(text)">@text</Tag>
}

@code {
    /// <summary>
    /// 取得或设置标签文本。
    /// </summary>
    [Parameter] public string Text { get; set; }

    /// <summary>
    /// 取得或设置标签颜色。
    /// </summary>
    [Parameter] public string Color { get; set; }

    /// <summary>
    /// 取得或设置标签点击事件。
    /// </summary>
    [Parameter] public EventCallback OnClick { get; set; }

    private string GetText()
    {
        var text = Language?.GetCode(Text);
        if (string.IsNullOrWhiteSpace(text))
            text = Text;
        return text;
    }

    private string GetColor(string text)
    {
        if (!string.IsNullOrWhiteSpace(Color))
            return Color;

        return UIService.GetTagColor(text);
    }
}